package com.bgs.travelapp.comment.controller;

import com.bgs.travelapp.comment.eneity.CommentEntity;
import com.bgs.travelapp.comment.service.CommentService;
import com.bgs.travelapp.menu.entity.MenuEntity;
import com.bgs.travelapp.page.PageRequest;
import com.bgs.travelapp.result.CommonResult;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;
import java.util.List;

/**
 * 前端评论功能（前端）
 * hbx 2022年8月10日11:40:20
 */
@RestController
@CrossOrigin
@RequestMapping("/comment")
public class CommentController {

    @Resource
    CommentService commentService;

    /**
     * 新增评论（前端）
     * hbx 2022年8月10日17:00:28
     * @param commentEntity
     * @return
     */
    @PostMapping("/saveComment")
    public CommonResult saveComment(CommentEntity commentEntity){
        return CommonResult.ok(commentService.saveComment(commentEntity));
    }


//    /**
//     * 分页 根据游记id获取评论信息（前端）
//     * hbx 2022年8月10日19:17:48
//     * todo 白
//     * @param pageRequest
//     * @return
//     */
//    @GetMapping("getCommentAllByTravesId")
//    public CommonResult getCommentAllByTravesId(PageRequest pageRequest,Integer travelsId){
//        return CommonResult.ok(commentService.getCommentAllByTravesId(pageRequest,travelsId));
//    }

    /**
     * 根据评论id删除评论
     * hbx 2022年8月11日11:27:47
     * @param id
     * @return
     */
    @DeleteMapping("deleteCommentById")
    public CommonResult deleteCommentById(Integer id){
        return CommonResult.ok(commentService.deleteCommentById(id));
    }

    /**
     * 根据游记id查询游记相关的评论
     * hbx 2022-8-17 08:50:27
     * todo 白
     * @param travelsId
     * @return
     */
    @GetMapping("getCommentAllByTravesId")
    public CommonResult getCommentAllByTravesId(Integer travelsId){
        return CommonResult.ok(commentService.getCommentAllByTravesId(travelsId));
    }


    /**
     * 新增一级回复评论 （前端）
     * hbx 2022年8月16日20:25:01
     * @param commentEntity
     * @return
     */
    @PostMapping("/saveReplyFirst")
    public CommonResult saveReplyFirst(CommentEntity commentEntity){
        return CommonResult.ok(commentService.saveReplyFirst(commentEntity));
    }

    /**
     * 新增二级回复评论 （前端）
     * hbx 2022年8月16日20:25:01
     * @param commentEntity
     * @return
     */
    @PostMapping("/saveReplySecond")
    public CommonResult saveReplySecond(CommentEntity commentEntity){
        return CommonResult.ok(commentService.saveReplySecond(commentEntity));
    }

    /**
     * 分页 获取游记评论信息（后端）
     * hbx 2022年8月18日10:06:48
     * @param pageRequest
     * @return
     */
    @GetMapping("getCommentAll")
    public CommonResult getCommentAll(PageRequest pageRequest){
        return CommonResult.ok(commentService.getCommentAll(pageRequest));
    }

    /**
     * 分页 根据用户名称，游记名称查询评论信息
     * @param pageRequest
     * @param userName
     * @param travelsName
     * @return
     */
    @GetMapping("/findCommentByCondition")
    public CommonResult findCommentByCondition(PageRequest pageRequest,String userName,String travelsName,String createTime){
        return CommonResult.ok(commentService.findCommentByCondition(pageRequest,userName,travelsName,createTime));
    }


}

